#include"typedef.h"

void
imprimeTablero(tipoJuego *juego)
{
	int i,j;
	
	printf("      ");
	for(i = 0; i < juego->parametros.columnas; i++)
		printf(" %-2d ",i);

	if(juego->parametros.opcion == MODO_DOSJ)
	{
		printf("\t|\t");
		printf("      ");
		for(i = 0; i < juego->parametros.columnas; i++)
			printf(" %-2d ",i);
	}

	putchar('\n');

	for(i=0; i < juego->parametros.filas; i++)
        {
		putchar('\n');
		printf(" %3d  ", i);
		for(j=0; j < juego->parametros.columnas; j++)
			imprimeFila(juego->tablero1, i, j);
		
		if(juego->parametros.opcion == MODO_DOSJ)
		{
			printf("\t|\t");
			printf(" %3d  ", i);
			for(j=0; j < juego->parametros.columnas; j++)
				imprimeFila(juego->tablero2, i, j);
		}

	}
	putchar('\n');
	putchar('\n');
	
	imprimePuntaje(juego,1);

	if(juego->parametros.opcion == MODO_DOSJ)
	{
		for(i = 0; i < (juego->parametros.columnas) - 5; i++)
			printf("    ");
		printf("\t\t|\t");
		imprimePuntaje(juego,2);
	}
	printf("\n");

}

void imprimeFila(tipoTablero *tablero, int i, int j)
{
	switch(tablero->matriz[i][j])
	{
		case 1: printf(" A  "); /* Azul */
			break;
		case 2: printf(" R  "); /* Rojo */
			break;
		case 3: printf(" V  "); /* Verde */
			break;
		case 4: printf(" N  "); /* Naranja */
			break;
		case 5: printf(" P  "); /* Purpura */
			break;
		case 6: printf(" C  "); /* Celeste */
			break;
		case 7: printf(" B  "); /* Blanco */
			break;
		case 8: printf(" G  "); /* Gris */
			break;
		case 9: printf(" F  "); /* Fucsia */
			break;
		default: printf(" .  "); /* Negro */ /* Vacio (matriz[i][j] == 0) */
			break;
	}
}

/* Recibe una estructura juego, y el numero del judador del que se quiere imprimir el puntaje */

void
imprimePuntaje(tipoJuego *juego, int jugador)
{
	switch(jugador){
		case 1: printf("Puntaje Jugador1: %d",juego->tablero1->puntaje);
			break;
		case 2:	printf("Puntaje Jugador2: %d",juego->tablero2->puntaje);
			break;
	}

	return;
}

